package view.displayManagers;

import java.util.List;

import javax.swing.JButton;

import view.DisplayManager;

/**
 * Interface for a display manager for a special game
 */
public interface SpecialGameDisplayMngr extends DisplayManager {

	/**
	 * Sets buttons to match automatic game requirements
	 * @param buttons- board buttons to set
	 * @return board buttons, modified for automatic game
	 */
	public List<JButton> setButtons(List<JButton> buttons);
	
	/**
	 * Sets the board for the game
	 */
	public void setBoard();
	
	/**
	 * Runs special game until game is over
	 * @param maxTurns- maximal numbers of turns until game is over
	 * @param turnDuration- how long should a turn last, in milliseconds
	 * @param interval- how long should the interval between two turns be, in milliseconds
	 */
	public void runSpecialGame(int maxTurns, int turnDuration, int interval);
	
	/**
	 * Stops currently running special game
	 */
	public void stopSpecialGame();
}